#include <stdio.h>

#include "mezza/vstr.h"

int main(void) {
    mzvstr_t vstr;
    register int i;

    vstr = mzvstr_new(10, 50);

    for(i = 0; i < 10; i++) {
        sprintf(vstr[i], "Numero #%d", i);
    }

    printf("Vector size: %d\n", SUB_SIZE(vstr));
    for(i = 0; i < 10; i++) {
        //printf("#%d) %s\n\tSize: %d\n", i, vstr[i], SSUB_SIZE(vstr[i]));
        printf("#%d) %s\n\tSize: %d\n", i, vstr[i], SUB_SIZE(vstr[i]));
    }

    mzvstr_realloc(&vstr, 20);

    for(i = 10; i < 20; i++) {
        sprintf(vstr[i], "Numero #%d (TRECHO ADICIONADO)", i);
    }

    printf("New vector size: %d\n", SUB_SIZE(vstr));
    for(i = 0; i < 20; i++) {
        //printf("#%d) %s\n\tSize: %d\n", i, vstr[i], SSUB_SIZE(vstr[i]));
        printf("#%d) %s\n\tSize: %d\n", i, vstr[i], SUB_SIZE(vstr[i]));
    }

    mzvstr_realloc(&vstr, 15);

    printf("New vector size: %d\n", SUB_SIZE(vstr));
    for(i = 0; i < 15; i++) {
        //printf("#%d) %s\n\tSize: %d\n", i, vstr[i], SSUB_SIZE(vstr[i]));
        printf("#%d) %s\n\tSize: %d\n", i, vstr[i], SUB_SIZE(vstr[i]));
    }

    mzvstr_free(vstr);

    return 0;
}
